jQuery(document).ready(function(){
	jQuery('#show_file table.data-table tbody').load(SITE_URL + 'file_manager/list_file/0', function(){
		jQuery('#show_file table.data-table tbody a.file-item').click(function(){
			id = $(this).attr('id').replace('file_', '');
			jQuery('#file_url > input#selected_file_path').val(SITE_URL +'myfiles/index/'+id);
			jQuery('#file_url > input#selected_file_id').val(id);
			jQuery('#show_file table.data-table tbody tr').each(function(){
				if(!$(this).find('input').is(':checked')){
					$(this).removeClass('selected');
				}
			});
//			jQuery('#show_file table.data-table tbody tr').removeClass('selected');
			jQuery(this).parent().parent().addClass('selected');
			
			return false;
		});
		jQuery('#show_file table.data-table tbody tr td > input').click(function(){
			jQuery('#show_file table.data-table tbody tr').each(function(){
				if(!jQuery(this).find('input').is(':checked')){
					jQuery(this).removeClass('selected');
				}
			});
			if(!jQuery(this).is(':checked')){
				jQuery(this).removeClass('selected');
			}else{
				jQuery(this).parent().parent().addClass('selected');
			}
		});
		jQuery('#show_file table.data-table tbody a.folder-item').click(function(){
			id = $(this).attr('id').replace('folder_', '');
			jQuery('#list_folder').find(("a[rel='"+id+"']")).click();
			return false;
		});
	});
	jQuery('li#root-folder a').click(function(){
		jQuery('#list_folder a').removeClass('selected');
		jQuery('li#root-folder a').addClass('selected');
		jQuery('#show_file table.data-table tbody').load(SITE_URL + 'file_manager/list_file/0', function(){
			jQuery('#show_file table.data-table tbody a.file-item').click(function(){
				id = jQuery(this).attr('id').replace('file_', '');
				jQuery('#file_url > input#selected_file_path').val(SITE_URL +'myfiles/index/'+id);
				jQuery('#file_url > input#selected_file_id').val(id);
				jQuery('#show_file table.data-table tbody tr').each(function(){
					if(!jQuery(this).find('input').is(':checked')){
						jQuery(this).removeClass('selected');
					}
				});
//				jQuery('#show_file table.data-table tbody tr').removeClass('selected');
				jQuery(this).parent().parent().addClass('selected');
				
				return false;
			});
			jQuery('#show_file table.data-table tbody tr td > input').click(function(){
				jQuery('#show_file table.data-table tbody tr').each(function(){
					if(!jQuery(this).find('input').is(':checked')){
						jQuery(this).removeClass('selected');
					}
				});
				if(!jQuery(this).is(':checked')){
					jQuery(this).removeClass('selected');
				}else{
					jQuery(this).parent().parent().addClass('selected');
				}
			});
			jQuery('#show_file table.data-table tbody a.folder-item').click(function(){
				id = jQuery(this).attr('id').replace('folder_', '');
				jQuery('#list_folder').find(("a[rel='"+id+"']")).click();
				return false;
			});
		});
		return false;
	});
	
	jQuery('.file_funtions a#new-folder-link').colorbox({
		innerWidth: 400,
		innerHeight: 150,
		initialWidth: 400,
		initialHeight: 150,
		onComplete: function(){
			jQuery('#new_folder_cancel').click(function(){
				jQuery.colorbox.close();
			});
			jQuery('#new_folder_submit').click(function(){
				folderName = jQuery('#folder_name').val();
				jQuery.post(SITE_URL + '/file_manager/new_folder', {action: 'add',folderName: folderName}, function(data){
					if(data.result){
						if(data.current_folder_id != 0){
							folderLink = jQuery('#list_folder').find(("a[rel^='"+data.current_folder_id+"']"));
							liLink = folderLink.parent().parent();
							if(liLink.find('ul').lenght > 0){
								liLink.find('ul').append('<li id="page_'+data.id+'"><div><a rel="'+data.id+'" href="#">'+data.name+'</a></div></li>');
							}else{
								liLink.append('<ul><li id="page_'+data.id+'"><div><a rel="'+data.id+'" href="#">'+data.name+'</a></div></li></ul>');
							}
						}else{
							jQuery('ul.sortable').append('<li id="page_'+data.id+'"><div><a rel="'+data.id+'" href="#">'+data.name+'</a></div></li>');
						}
						
						jQuery.colorbox.close();
					}else{
						jQuery('#uploking_box_error').html(data.message);
					}
				}, 'json');
			});
		},
		onClosed: function(){
		}
	});
	jQuery("#move-link").click(function(){
		if(jQuery('#show_file table.data-table').find("input[type='checkbox']:checked").length > 0){
			$item_list	= jQuery('#list_folder_box ul.sortable');
			$url		= '';
			$cookie		= 'open_move_folders';
			jQuery.colorbox({
				href:SITE_URL + "file_manager/folder_box",
				innerWidth: 400,
				innerHeight: 400,
				initialWidth: 400,
				initialHeight: 400,
				open: true,
				onComplete: function(){
					pyro.sort_tree($item_list, $url, $cookie);
					jQuery('#list_folder_box a').click(function(){
						jQuery('#list_folder_box a').removeClass('selected');
						jQuery(this).addClass('selected');
					});
					jQuery('#close-list-folder-fox').click(function(){
						jQuery.colorbox.close();
					});
					
					jQuery('#submit-list-folder-fox').click(function(){
						if(jQuery('#list_folder_box a.selected').length){
							desId = jQuery('#list_folder_box a.selected').attr('rel');
						
							var params = {desId:desId};
							
							jQuery('#show_file table.data-table').find("input[type='checkbox']:checked, input[type='text'], input[type='hidden'], input[type='password'], input[type='submit'], option[selected], textarea").each(function() {
								params[ this.name || this.id || this.parentNode.name || this.parentNode.id ] = this.value;
							});
							jQuery.post(SITE_URL+'file_manager/move_action', params, function(data){
								if(data.result){
									jQuery('#show_file table.data-table tbody tr').each(function(){
										if(jQuery(this).find('input').is(':checked')){
											if(jQuery(this).find('input').attr('class') == 'folder_item'){
												id = jQuery(this).find('input').attr('id').replace('folder_id_', '');
												html = '<li id="page_'+id+'">'+jQuery('#list_folder ul.sortable').find('li#page_' + id).html() + '</li>';
												jQuery('#list_folder ul.sortable').find('li#page_' + id).remove();
												if(jQuery('#list_folder ul.sortable li#page_' + desId + ' ul').length){
													jQuery('#list_folder ul.sortable li#page_' + desId + ' ul').append(html);	
												}else{
													html = '<ul>' + html + '</ul>';
													jQuery('#list_folder ul.sortable li#page_' + desId).append(html);
												}
											}								
											jQuery(this).remove();
										}
									});
									jQuery.colorbox.close();
								}
							},'json');
						}
					});
				}
			});
		}
		return false;
	});
	jQuery("#copy-link").click(function(){
		if(jQuery('#show_file table.data-table').find("input[type='checkbox']:checked").length > 0){
			$item_list	= $('#list_folder_box ul.sortable');
			$url		= '';
			$cookie		= 'open_move_folders';
			jQuery.colorbox({
				href:SITE_URL + "file_manager/folder_box",
				innerWidth: 400,
				innerHeight: 400,
				initialWidth: 400,
				initialHeight: 400,
				open: true,
				onComplete: function(){
					pyro.sort_tree($item_list, $url, $cookie);
					jQuery('#list_folder_box a').click(function(){
						jQuery('#list_folder_box a').removeClass('selected');
						jQuery(this).addClass('selected');
					});
					jQuery('#close-list-folder-fox').click(function(){
						jQuery.colorbox.close();
					});
					
					jQuery('#submit-list-folder-fox').click(function(){
						if(jQuery('#list_folder_box a.selected').length){
							desId = jQuery('#list_folder_box a.selected').attr('rel');
						
							var params = {desId:desId};
							
							jQuery('#show_file table.data-table').find("input[type='checkbox']:checked, input[type='text'], input[type='hidden'], input[type='password'], input[type='submit'], option[selected], textarea").each(function() {
								params[ this.name || this.id || this.parentNode.name || this.parentNode.id ] = this.value;
							});
							jQuery.post(SITE_URL+'file_manager/copy_action', params, function(data){
								if(data.result){
									
									jQuery('#show_file table.data-table tbody tr').each(function(){
										if(jQuery(this).find('input').is(':checked')){
											if(jQuery(this).find('input').attr('class') == 'folder_item'){
												id = jQuery(this).find('input').attr('id').replace('folder_id_', '');
												html = '<li id="page_'+id+'">'+jQuery('#list_folder ul.sortable').find('li#page_' + id).html() + '</li>';
												jQuery('#list_folder ul.sortable').find('li#page_' + id).remove();
												if(jQuery('#list_folder ul.sortable li#page_' + desId + ' ul').length){
													jQuery('#list_folder ul.sortable li#page_' + desId + ' ul').append(html);	
												}else{
													html = '<ul>' + html + '</ul>';
													jQuery('#list_folder ul.sortable li#page_' + desId).append(html);
												}
											}								
											//jQuery(this).remove();
										}
									});
									
									jQuery.colorbox.close();
								}
							},'json');
						}
					});
				}
			});
		}
		return false;
	});
	
	jQuery('#rename-link').click(function(){
		if(jQuery('#show_file table.data-table').find("input[type='checkbox']:checked").length > 0){
			if(jQuery('#show_file table.data-table').find("input[type='checkbox']:checked").first().attr('class') == 'folder_item'){
				id = jQuery('#show_file table.data-table').find("input[type='checkbox']:checked").first().attr('id').replace('folder_id_', '');
				jQuery.colorbox({
					href:SITE_URL + "file_manager/edit_folder/" + id,
					innerWidth: 400,
					innerHeight: 150,
					initialWidth: 400,
					initialHeight: 150,
					open: true,
					onComplete: function(){
						jQuery('#new_folder_cancel').click(function(){
							jQuery.colorbox.close();
						});
						jQuery('#new_folder_submit').click(function(){
							jQuery.post(SITE_URL + "file_manager/edit_folder/" + id,{action: 'edit',folderName: jQuery('#folder_name').val()}, function(data){
								if(data.result){
									jQuery('table.data-table').find('#folder_'+id).text(data.folderName)
									jQuery('#list_folder li#page_'+id+' > div > a').text(data.folderName);
									jQuery.colorbox.close();
								}else{
									jQuery('#uploking_box_error').html(data.message);
								}
							}, 'json');
						});
					}
				});
			}else{
				id = jQuery('#show_file table.data-table').find("input[type='checkbox']:checked").first().attr('id').replace('file_id_', '');
				jQuery.colorbox({
					href:SITE_URL + "file_manager/edit_file/" + id,
					innerWidth: 400,
					innerHeight: 150,
					initialWidth: 400,
					initialHeight: 150,
					open: true,
					onComplete: function(){
						jQuery('#edit_file_cancel').click(function(){
							jQuery.colorbox.close();
						});
						jQuery('#edit_file_submit').click(function(){
							jQuery.post(SITE_URL + "file_manager/edit_file/" + id,{action: 'edit',fileName: jQuery('#file_name').val()}, function(data){
								if(data.result){
									jQuery('table.data-table #file_'+id+' span').html(data.fileName)
									jQuery.colorbox.close();
								}else{
									jQuery('#uploking_box_error').html(data.message);
								}
							}, 'json');
						});
					}
				});
			}
		}
		return false;
	});
	
	jQuery("#play-video").click(function(){
		id = jQuery('#file_url > input#selected_file_id').val();
		if(id != ''){
			jQuery.colorbox({
				href:SITE_URL + "myfiles/play/" + id,
				innerWidth: 440,
				innerHeight: 340,
				initialWidth: 440,
				initialHeight: 340,
				open: true
			});
		}
		return false;
	});
	jQuery('#view-file-link').click(function(){
		href = jQuery('#file_url > input#selected_file_path').val();
		if(href != ''){
			window.open(href);
		}
		return false;
	});
	
	jQuery('#download-link').click(function(){
		id = jQuery('#file_url > input#selected_file_id').val();
		if(id != ''){
			window.open(SITE_URL + 'myfiles/get/'+id);
		}
		return false;
	});
	jQuery("#share-link").click(function(){
		if(jQuery('#show_file table.data-table').find("input[type='checkbox']:checked").length > 0){
			params = {};
			
			jQuery('#show_file table.data-table').find("input[type='checkbox']:checked, input[type='text'], input[type='hidden'], input[type='password'], input[type='submit'], option[selected], textarea").each(function() {
				params[ this.name || this.id || this.parentNode.name || this.parentNode.id ] = this.value;
			});
			jQuery.colorbox({
				href:SITE_URL + "file_manager/share",
				innerWidth: 700,
				innerHeight: 400,
				initialWidth: 700,
				initialHeight: 400,
				data: params,
				open: true,
				onComplete: function(){
					jQuery('#share_link_cancel').click(function(){
						jQuery.colorbox.close();
					});
					
					jQuery('#share_link_submit').click(function(){
						if(true){						
							shareParams = {action: 'submit',emais:jQuery('#email_list').val(), description: jQuery('#share_desc').val()};
							jQuery('#show_file table.data-table').find("input[type='checkbox']:checked, input[type='text'], input[type='hidden'], input[type='password'], input[type='submit'], option[selected], textarea").each(function() {
								shareParams[ this.name || this.id || this.parentNode.name || this.parentNode.id ] = this.value;
							});
							jQuery.post(SITE_URL+'file_manager/share', shareParams, function(data){
								if(data.result){
									jQuery.colorbox.close();
								}
							},'json');
						}
					});
				}
			});
		}
		return false;
	});
	jQuery("#delete_action").click(function(){
		if(jQuery('#show_file table.data-table').find("input[type='checkbox']:checked").length > 0){
			confirm('', function(){
				var params = {};
				jQuery('#show_file table.data-table').find("input[type='checkbox']:checked, input[type='text'], input[type='hidden'], input[type='password'], input[type='submit'], option[selected], textarea").each(function() {
					params[ this.name || this.id || this.parentNode.name || this.parentNode.id ] = this.value;
				});
				jQuery.post(SITE_URL+'file_manager/delete_action', params, function(data){
					if(data.result){
						jQuery('#show_file table.data-table tbody tr').each(function(){
							if(jQuery(this).find('input').is(':checked')){
								if(jQuery(this).find('input').attr('class') == 'folder_item'){
									id = jQuery(this).find('input').attr('id').replace('folder_id_', '');
									jQuery('#list_folder ul.sortable').find('li#page_' + id).remove();
								}								
								jQuery(this).remove();
							}
						});
					}
				},'json');
			});
		}
		return false;
	});
	
	jQuery('#search-input').keypress(function(e){
		if(e.keyCode == 13 && jQuery(this).val() != '') {
			jQuery('#show_file table.data-table tbody').load(SITE_URL + 'file_manager/search/' + jQuery(this).val(), function(){
				jQuery('#show_file table.data-table tbody a.file-item').click(function(){
					id = $(this).attr('id').replace('file_', '');
					jQuery('#file_url > input#selected_file_path').val(SITE_URL +'myfiles/index/'+id);
					jQuery('#file_url > input#selected_file_id').val(id);
					jQuery('#show_file table.data-table tbody tr').each(function(){
						if(!$(this).find('input').is(':checked')){
							$(this).removeClass('selected');
						}
					});
//					jQuery('#show_file table.data-table tbody tr').removeClass('selected');
					jQuery(this).parent().parent().addClass('selected');
					
					return false;
				});
				jQuery('#show_file table.data-table tbody tr td > input').click(function(){
					jQuery('#show_file table.data-table tbody tr').each(function(){
						if(!jQuery(this).find('input').is(':checked')){
							jQuery(this).removeClass('selected');
						}
					});
					if(!jQuery(this).is(':checked')){
						jQuery(this).removeClass('selected');
					}else{
						jQuery(this).parent().parent().addClass('selected');
					}
				});
				jQuery('#show_file table.data-table tbody a.folder-item').click(function(){
					id = $(this).attr('id').replace('folder_', '');
					jQuery('#list_folder').find(("a[rel='"+id+"']")).click();
					return false;
				});
			});
	    }
	});
});

function confirm(message, callback) {
	jQuery('#confirm').modal({
		closeHTML: "<a href='#' title='Close' class='modal-close'>x</a>",
		position: ["20%",],
		overlayId: 'confirm-overlay',
		containerId: 'confirm-container', 
		onShow: function (dialog) {
			var modal = this;
			if(message != ''){
				jQuery('.message', dialog.data[0]).append(message);
			}
			// if the user clicks "yes"
			jQuery('.yes', dialog.data[0]).click(function () {
				// call the callback
				if (jQuery.isFunction(callback)) {
					callback.apply();
				}
				// close the dialog
				modal.close(); // or $.modal.close();
			});
		}
	});
}